package com.me.modules.incident.entity;

import com.baomidou.mybatisplus.annotation.TableName;
import com.me.modules.activiti.annotation.ActField;
import com.me.modules.activiti.annotation.ActTable;
import com.me.modules.common.entity.ActivitiBaseEntity;
import com.me.modules.sys.entity.ExtendFieldValue;
import lombok.Data;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.Date;


import java.util.List;


/**
 * 事件工单
 *
 * @author jindouyun
 */
@Data
@ActTable(tableName = "inc_incident_info",pkName="id")
@TableName("inc_incident_info")
public class IncidentInfoEntity extends ActivitiBaseEntity implements Serializable {
	private static final long serialVersionUID = 1L;

	//ID
	private Long id;
	//编号
	private String incNo;
	//事件来源
	@ActField(name = "事件来源")
	private String incOrigin;
	//工单描述
	@ActField(name = "工单描述")
	private String incContent;
	//事件类型
	@ActField(name = "事件类型")
	private String incType;
	//业务系统
	@ActField(name = "业务系统")
	private Integer operation;
	//请求人ID
	private Integer reqId;
	//事件创建时间
	private Date incCreateDate;
	//事件提交事件
	private Date incAssignDate;
	//事件响应时间
	private Date incResDate;
	//事件解决时间
	private Date incSolvedDate;
	//事件关闭时间
	private Date incClosedDate;
//	//事件创建人
//	private Integer sumbitUserId;
	//事件处理人
	private Integer dealOperatop;
	//事件处理组
	private Integer dealGroupId;
	//事件状态
	private String status;
	//关闭代码
	private String closeCode;
	//已违反SLA
	private Integer incIsbreaksla;
	//根源事件标志
	private String incIsrootinc;
	//重复事件标志
	private String incIsrepeatinc;
	//根源事件id
	private Long incRootincId;
	//解决方案类型
	private String incSolutiontype;
	//满意度
	private String incSatisfaction;
	//事件摘要
	private String incTopic;
	//流程实例id
	private String instanceId;
	//流程定义id
	private String defid;

	//业务系统名称
	private String operationName;
	//请求人姓名
	private String reqUser;
	private String startUserName;

	public String getReqUser() {
		return reqUser;
	}

	public void setReqUser(String reqUser) {
		this.reqUser = reqUser;
	}

	public String getStartUserName() {
		return startUserName;
	}

	public void setStartUserName(String startUserName) {
		this.startUserName = startUserName;
	}

	public String getOperationName() {
		return operationName;
	}

	public void setOperationName(String operationName) {
		this.operationName = operationName;
	}

	private List<ExtendFieldValue> valueDictionarys =new ArrayList<ExtendFieldValue>();

	public List<ExtendFieldValue> getValueDictionarys() {
		return valueDictionarys;
	}

	public void setValueDictionarys(List<ExtendFieldValue> valueDictionarys) {
		this.valueDictionarys = valueDictionarys;
	}

}
